unit oProcessObjectConstants;

{
	created   2.3.2010
	author    Miroslav Rusin
	purpose   defines object constants

	edit list:
                7.3.2010 Michal Varga
                        added constants for pedestrian manager
                9.3.2010 Miroslav Mintal
                        added constants for paths manager
        comment list:
                7.3.2010 Michal Varga
                        each set of constants should begin with some specific number
                        prefix (eg. pedestrian manager 11, tree manager 22...) to
                        be able to add new item into the set without skipping
                        range of used numbers
        to do list:
                7.3.2010 Michal Varga
                        add other constants for pedestrian manager
}

interface
  const
    // general response: Result - TString {true, false}
    PO_TEST = -3;
    PO_SUCCESS = -1;
    PO_FAILURE = -2;
    // inputs: LISTPOINTS - TProcessingpointslist
    // input : type id - TInteger
    PO_SCENE_INSERT_PHYSICAL_ENTITY = 0;
    // inputs: id - Tinteger
    PO_SCENE_DELETE_PHYSICAL_ENTITY = 1;
    // inputs: id of old physical entity - Tinteger
    // NewPE - Tphysical entity; OldPE will be deleted and NewPE inserted
    PO_SCENE_MOVE_PHYSICAL_ENTITY = 2;
    // inputs: id - Phys.entity ID - Tinteger,  log type - Integer from
    // oEntityTypeConstants
    PO_SCENE_INSERT_LOGICAL_ENTITY_TO_PHYS_ENTITY  = 3;
    // inputs: id - Tinteger
    PO_SCENE_DELETE_LOGICAL_ENTITY  = 4;
    // inputs: id of physical entity - Tinteger; LE - TLogicalEntity - not ready
    PO_SCENE_UPDATE_LOGICAL_ENTITY  = 5;
    // inputs: Pedestrian - TPedestrian
    PO_SCENE_GET_PHYSICAL_ENTITIES_FOR_PEDESTRIAN  = 6;
    // inputs: Layer - index of the level - integer; Pedestrian - TPedestrian
    // response: List - TList of TPhysicalEntities
    PO_SCENE_GET_LOGICAL_ENTITIES_FOR_PEDESTRIAN = 7;
    // inputs: Layer - index of the level - integer; Pedestrian - TPedestrian
    // response: List - TList of TLogicalEntities
    PO_SCENE_GET_PEDESTRIANS_FOR_PED_PEDESTRIAN  = 8;
    // inputs: Layer - index of the level - integer; Pedestrian - TPedestrian
    // response: List - TList of TPedestrian
    PO_SCENE_INSERT_PEDESTRIAN  = 9;
    // inputs: Layer - index of the level - integer; Pedestrian - TPedestrian;
    // From - TCoordinates; To - TCoordinates
    PO_SCENE_MOVE_PEDESTRIAN  = 10;
    // inputs: Layer - index of the level - integer; Pedestrian - TPedestrian
    PO_SCENE_DELETE_PEDESTRIAN  = 11;
    // inputs: TCoordinates - position where clicked
    // returns : TPhysicalEntity
    PO_SCENE_GET_PHYSICAL_ENTITY = 21;
    // inputs: TCoordinates - position where clicked
    // returns : TLogicalEntity
    PO_SCENE_GET_LOGICAL_ENTITY = 28;

//    PO_TRANSLATE_COMPONENT = 12;

    // input : phys_layer name - TString
    // input : height - TReal
    // input : width - Treal
    // returns true if inserted
    PO_PROJECT_INSERT_PHYS_LAYER = 13;
    // input : phys_layer name - TString
    // returns true if deleted
    PO_PROJECT_DELETE_PHYS_LAYER = 14;
    // input : log_layer name - TString
    // returns true if inserted
    PO_PROJECT_INSERT_LOG_LAYER = 17;
    // input : log_layer name - TString
    // returns true if deleted
    PO_PROJECT_DELETE_LOG_LAYER = 19;

    // input: name - Tstring - project name
    // return true if deleted
    PO_PROJECT_DELETE = 15;
    // input : name - Tstring - project name
    // input : config - Tstring - config name
    // input : physLayerName - Tstring - name of phys layer
    // input : logLayerName - Tstring - name of log layer
    // returns true if inserted
    PO_INSERT_LAYER_TO_CONFIG = 16;

    // input : name - Tstring - project name
    // input : config - Tstring - config name
    // input : layerName - Tstring - name of world configuration
    PO_DELETE_LAYER_FROM_CONFIG = 18;
    // input : name - Tstring - project name
    // path - Tstring - project dir
    PO_PROJECT_SAVE_SCENE = 20;
    // input : config - Tstring - configuration name
    // project - Tstring - project name
    // returns true if success
    PO_LOAD_DATA_WITH_CONFIGURATION = 22;
    // input : project descriptor path - Tstring
    PO_PROJECT_LOAD = 24;
    // input : configuration name - Tstring
    PO_LOAD_CONFIGURATION = 25;
    // input : project descriptor path - Tstring
    PO_PROJECT_SAVE = 26;
    // input : configuration name - Tstring
    PO_SAVE_CONFIGURATION = 27;
    // input : project path - Tstring
    PO_PROJECT_SAVE_WITH_PATH = 29;
    // input : project name - Tstring
    PO_PROJECT_INSERT = 30;

    // input : config name - Tstring
    PO_CONFIG_INSERT = 31;
    // input : config name - Tstring
    PO_CONFIG_DELETE = 32;
    // input : config name - Tstring
    // input : world config name - Tstring
    // returns : TScene loaded acc. to world config
    PO_LOAD_SCENE_FROM_CONFIG = 33;
    // input : project name - Tstring
    // returns : Tinteger - 1 if has a path to be saved there, 0 if not
    PO_PROJECT_HAS_PATH = 34;
    // input : paType : Tinteger;
    // input : points of polygon - Tlist
    // returns success if added
    PO_SCENE_INSERT_LOGICAL_ENTITY = 35;
    // input : none
    // returns project name - Tstring
    PO_PROJECT_NAME = 36;

    // input none
    /// returns TProcesssingMAp
    PO_PROJECT_GET_LAYERS = 37;
    // input : loglayer name = Tstring
    // inpiut : physlayername = Tstring
    // returns nil
    PO_PROJECT_INSERT_LAYER_MAPPING = 38;
    // input : log layer name - Tstring
    // returns : phys layer - Tstring
    PO_PROJECT_GET_LAYER_MAPPING = 39;
    { TREE MANAGER }

    // input : phys_layer name - TString
    // returns succes if inserted else failture
    PO_INSERT_PHYS_LAYER_TO_TREE = 40;
    // input : phys_layer name - TString {without duplicity control}
    // returns nil
    PO_INSERT_PHYS_LAYER_TO_TREE_FAST = 41;
    // input : log_layer name - TString
    // returns succes if inserted else failture
    PO_INSERT_LOG_LAYER_TO_TREE = 42;
    // input : log_layer name - TString {without duplicity control}
    // returns nil
    PO_INSERT_LOG_LAYER_TO_TREE_FAST = 43;
    // input : paths_layer name - TString
    // returns succes if inserted else failture
    PO_INSERT_PATHS_LAYER_TO_TREE = 44;
    // input : paths_layer name - TString {without duplicity control}
    // returns nil
    PO_INSERT_PATHS_LAYER_TO_TREE_FAST = 45;
    // input : pedest_layer name - TString
    // returns succes if inserted else failture
    PO_INSERT_PEDEST_LAYER_TO_TREE = 46;
    // input : pedes_layer name - TString {without duplicity control}
    // returns nil
    PO_INSERT_PEDEST_LAYER_TO_TREE_FAST = 47;
    // input : arrivals_layer name - TString
    // returns succes if inserted else failture
    PO_INSERT_ARRIVALS_LAYER_TO_TREE = 48;
    // input : arrivals_layer name - TString {without duplicity control}
    // returns nil
    PO_INSERT_ARRIVALS_LAYER_TO_TREE_FAST = 49;
    // input : nil
    // returns nil
    PO_TREE_LEFT_CLICK = 50;
    // input : nil
    // returns succes if menu will show else failture
    PO_TREE_RIGHT_CLICK = 51;
    // input : nil
    // returns nil
    PO_TREE_MENU_CLICK = 52;
    // input : tree component - TTreeView
    // returns nil
    PO_TREE_SET_COMPONENT = 53;
    // input project name - String
    // returns nil
    PO_TREE_SHOW_PROJECT = 54;

    { NEJAKY MAYROV MANAGER }

            //  input : xml to save - TProcessingXML
    // returns : xml to save - TProcessingXML
    PO_PREPARE_SAVE = 55;
    // input : project data dir - TString
    PO_PREPARE_LOAD_PEDESTRIANS = 56;
    //  input : xml to save - TProcessingXML
    // returns : xml to save - TProcessingXML
    PO_SCENE_SAVE = 57;
    // input : project data dir - TString
    PO_SCENE_LOAD = 58;
    //  input : xml to save - TProcessingXML
    // returns : xml to save - TProcessingXML
    PO_PREPARE_SAVE_WAYPOINTS = 59;
    // input : project data dir - TString
    PO_PREPARE_LOAD_WAYPOINTS = 60;
    // input : layer name : TString
    PO_SCENE_DELETE_LAYER = 61;
    // input : layer name : TString
    PO_SCENE_INSERT_LAYER = 62;
    // input : layer name : TString
    // returns : Tlevel
    PO_SCENE_GET_LAYER_BY_NAME = 63;
    // input : data type : TTinteger from oDataTypeeConstants.pas
    // input : data name : tstring
    // input : xml  : Tprocessingxml
    PO_SAVE_DATA = 64;
    // input : data type : TTinteger from oDataTypeeConstants.pas
    // input : data name : tstring
    // returns : TProcessingXML
    PO_LOAD_DATA = 65;
    // input : entity id : TTinteger
    // returns : TEntityProcessing
    PO_SCENE_GET_ENTITY_BY_ID = 66;
    // input : none
    // returns : nothing
    PO_PEDESTRIANS_SAVE = 67;
    // input : none
    // returns : TProcessingXML
    PO_PEDESTRIANS_LOAD = 68;
    // input : none
    // returns : nothing
    PO_PROJECT_LOAD_SCENE = 69;
    // input : none
    // returns : nothing
    PO_SAVE_WAYPOINTS = 70;
    // input : none
    // returns : TProcessingXML
    PO_LOAD_WAYPOINTS = 71;
    // input : name - Tstring
    PO_PROJECT_INSERT_WAYPOINTS = 72;
    // input : name - Tstring
    PO_PROJECT_DELETE_WAYPOINTS = 73;
    // input : name - Tstring
    PO_PROJECT_INSERT_ARRIVAL = 74;
    // input : name - Tstring
    PO_PROJECT_DELETE_ARRIVAL = 75;

    PO_ARRIVAL_SAVE = 76;
    // input : name - Tstring
    PO_ARRIVAL_LOAD = 77;
    // input : layer name - Tstring
    // returns : Tprocessinglevel - layer
    PO_SCENE_SET_ID = 78;
    // input : value - TTinteger
    PO_SCENE_GET_ID = 79;
    // input : name : Tstring
    // input : shape : TProcessingPhysEntity
    // input : layer : TTinteger;
    // return : TEntityProcessing
    PO_SCENE_INSERT_WAYPOINT = 80;
    // input : id : TTinteger;
    PO_SCENE_DELETE_WAYPOINT = 81;
    // input : id : TTinteger;
    PO_SCENE_GET_WAYPOINT = 82;
    // input : name - TString;
    // input : type - Tinteger;
    // returns : TProcessinglevel
    PO_SCENE_LOAD_PHYS_LAYER = 83;
    // returns list of pedestians - tproessing pdestinstlsts
    PO_SCENE_GET_ALL_PEDESTRIANS = 84;
    // input : none
    // returns nil
    PO_SAVE_GENERATORS = 85;
    // input : none
    // returns nil
    PO_LOAD_GENERATORS = 86;
    // INPUT : Tstring - name
    PO_SAVE_LAYER = 87;
    // input : Tstring name
    // Tinteger layer type
    // retursn Tprocessinglevel
    PO_LOAD_LAYER = 88;
    // input : Tstring name
    // Tinteger layer type
    // returns Tstring
    PO_PROJECT_GET_LAYER_PATH = 89;
    // input : Tstring name
    // Tinteger layer type
    // Tstring path
    PO_SCENE_SAVE_LAYER = 90;
    // input : project path - Tstring
    // returns nil
    PO_SCENE_SET_PATH = 91;
    // input : none
    // returns TStringlist names
    PO_PROJECT_GET_PATH_NAMES = 92;
    // input : none
    // returns TStringlist names
    PO_PROJECT_GET_PEDESTRIAN_NAMES = 93;
    // input : Tstring name
    // returns TProcessingLevel
    PO_SCENE_LOAD_LOG_LAYER = 94;
    // input : none
    // returns nil
    PO_SCENE_UNLOAD_PHYS_LAYER = 95;
    // input : none
    // returns nil
    PO_SCENE_UNLOAD_LOG_LAYER = 96;
    // input : Tstring - name
    // returns none
    PO_PROJECT_SAVE_LOG_LAYER = 97;
    // input : Tstring - name
    // returns none
    PO_PROJECT_SAVE_PHYS_LAYER = 98;

    { PEDETRIAN EDITOR MANAGER}


    // input nothing
    // returns success, nil
    PO_PED_EDITOR_INSERT = 300;  // displays editor frame
    // input TPedestrianData
    // returns success, nil
    PO_PED_EDITOR_EDIT = 301;   // displays editor frame with input data
    // input nothing
    // result success, nil
    PO_PED_EDITOR_GET = 302;

    { PEDESTRIAN MANAGER }

    //input TPedestrian
    //returns nil
    PO_PEDMAN_INSERT = 1101;
    //input Pedestrian name - String
    //returns nil
    PO_PEDMAN_REMOVE = 1102;
    //input TPedestrian
    //returns nil
    PO_PEDMAN_EDIT = 1103;
    //input IXMLNode
    //returns nil
    PO_PEDMAN_SAVE = 1104;
    //input IXMLNode
    //returns nil
    PO_PEDMAN_LOAD = 1105;
    //input string
    //returns pedestrian
    PO_PEDMAN_GET_PEDSTRIAN = 1106;
    // input none
    // returns Tprocessingstrings
    PO_PEDMAN_GET_NAMES = 1107;

    { PATHS MANAGER }

    // input : path name - TString
    // returns : succes if inserted else failture
    PO_PATHS_INSERT_PATH = 2200;
    // input : path name - TString
    // returns : succes if deleted else failture
    PO_PATHS_REMOVE_PATH = 2201;
    // input : path name - TString
    // input : new entity - TEntityProcessing
    // input : prior entity  - TEntityProcessing, if nil then on end
    // returns : succes if inserted else failture
    PO_PATHS_INSERT_WAYPOINT = 2202;
    // input : path name - TString
    // input : del entity - TEntityProcessing
    // returns : succes if inserted else failture
    PO_PATHS_REMOVE_WAYPOINT = 2203;
    //input IXMLNode
    //returns success
    PO_PATHS_SAVE = 2204;
    //input IXMLNode
    //returns success
    PO_PATHS_LOAD = 2205;
    //input String
    //returns path
    PO_PATHS_GET_PATH = 2206;
    //input String
    //returns path
    PO_PATHS_GET_PATH_NAMES = 2207;

    { ARRIVALS EDITOR MANAGER}

    // input nothing
    // returns success, nil
    PO_EDITOR_ARRIVAL_INSERT = 400;  // displays editor frame
    // input TPedestrianData
    // returns success, nil
    PO_EDITOR_ARRIVAL_EDIT = 401;   // displays editor frame with input data
    // input nothing
    // result success, nil
    PO_EDITOR_ARRIVAL_GET = 402;

    { ARRIVALS MANAGER }

    //input TArrivalData
    //returns nil
    PO_ARRMAN_INSERT = 3301;
    //input Arrival name - String
    //returns nil
    PO_ARRMAN_REMOVE = 3302;
    //input TArrivalData
    //returns nil
    PO_ARRMAN_EDIT = 3303;
    //input IXMLNode
    //returns nil
    PO_ARRMAN_SAVE = 3304;
    //input IXMLNode
    //returns nil
    PO_ARRMAN_LOAD = 3305;

    { SAVE/LOAD GENERATORS }

    //input generator + item
    //result nil
    SAVE_GENERATOR = 9991;
    //input node
    //result generator
    LOAD_GENERATOR = 9992;

    { EDITOR MANAGER }

    // input : value  TInteger
    PO_EDITOR_SET_ID = 4401;
    // INPUT : LIST of pedestrians - tprocessingpedestrians list
    PO_EDITOR_GET_PEDESTRIANS = 4402;
    
    { CONVERSIONS MANAGER }

    //input TGeneratorData
    //output TGenerator
    CONVERT_DATA_TO_GENERATOR = 100001;


    { CONFIG MANAGER }

    //input FL - TString
    //input LL - TString
    //input Paths - TString
    //input Pedestrians - TString
    //input Arrivals - TString
    //input RunProperties - TString
    //returns nil
    PO_CONFIG_SET_CHOICE = 5501;
    //input nil
    //returns FL, LL, Paths, Pedestrians, Arrivals, RunProperties - TString
    PO_CONFIG_GET_CHOICE = 5502;
    //input IXMLNode
    //returns nil
    PO_CONFIG_SAVE = 5503;
    //input IXMLNode
    //returns nil
    PO_CONFIG_LOAD = 5504;

    { EDITOR FL MANAGER }

    // input nil
    // returns nil
    PO_EDITOR_FL_NEW_FRM = 6000;
    // input : layer name - TString
    // returns nil
    PO_EDITOR_FL_LOAD_FRM = 6001;
    // input : nil
    // returns nil
    PO_EDITOR_FL_SAVE = 6100;

    { EDITOR LL MANAGER }

    // input nil
    // returns nil
    PO_EDITOR_LL_NEW_FRM = 7000;
    // input : layer name - TString
    // returns nil
    PO_EDITOR_LL_LOAD_FRM = 7001;
    // input : nil
    // returns nil
    PO_EDITOR_LL_SAVE = 7100;

    { EDITOR PATHS MANAGER }

    // input nil
    // returns nil
    PO_EDITOR_PATHS_NEW_FRM = 8000;
    // input : layer name - TString
    // returns nil
    PO_EDITOR_PATHS_LOAD_FRM = 8001;
    // input : nil
    // returns nil
    PO_EDITOR_PATHS_SAVE = 8100;

    {EDITOR GENERATOR MANAGER}

    // input nothing
    // returns success, nil
    PO_GEN_EDITOR_INSERT = 9000;  // displays editor frame
    // input TPedestrianData
    // returns success, nil
    PO_GEN_EDITOR_EDIT = 9001;   // displays editor frame with input data
    // input nothing
    // result success, nil
    PO_GEN_EDITOR_GET = 9002;

implementation


end.
